sql = "SELECT @@Identity FROM Users"

来源:百度知道 编辑:UC知道 时间:2024/05/25 06:12:57
@@这是什么 意思?不加不行吗?

@@ ,这事是全局变量的开始

@@identity ,这个事读取users表最近插入的那条记录的自增列的的值

系统的全局变量都是以“@@”开头的,例如@@error也是一样

一般是多表一起插入数据的时候使用
例如,一个表记录用户信息,另一个表记录用户所对应的权限,两个表均使用用户表的ID来关联

你新添加用户的时候,肯定需要一次性插入用户表和权限表这两个表。你插入完用户表后,ID字段的值才是已知的,这个时候在存储过程中就可以写成

INSERT INTO 用户表() VALUES ()
DECLARE @ID AS INT
SELECT @ID = @@Identity
INSERT INTO 权限表 (UserID, ……) VALUES (@ID, ……)